import axios from "axios";
// import { config } from "vue/types/umd";
// 创键一个axios对象出来
const request = axios.create({
    baseURL:'http://localhost:8080',
    timeout: 5000
    })
//request 拦截器
// 可以在请求发送前做一次处理
// 比如统一token，对请求参数加密
request.interceptors.request.use(config =>{
                                 config.headers['Content-Type'] = 'application/json;charset=utf-8';

const user = localStorage.getItem("user");
if(user){
    config.headers['token'] = JSON.parse(user).token;
}

//设置请求头
return config
},error =>{
    return Promise.reject(error)
});

// response 拦截器
// 可以在接口响应后统一处理结果
request.interceptors.response.use(
    response =>{
    // response.data即为后端返回的result
    let res = response.data;
    //兼容服务器返回的字符串数据
    if (typeof res ==='string'){
        res = res ? JSON.parse(res) :res
    }
    return res;
},
error =>{
console.log('error' + error)
return Promise.reject(error)
}
)
export default request